package org.example.biz;

import lombok.Data;
import org.example.dao.UserDao;
import org.example.web.UserAction;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Service;

import javax.annotation.PostConstruct;
import javax.annotation.PreDestroy;
import javax.annotation.Resource;

/**
 * Company 源辰信息
 *
 * @author navy
 * @date 2024/4/15
 * Email haijunzhou@hnit.edu.cn
 */
@Service("ubiz")
@Data
public class UserBiz {

    @Autowired  // 基于byType 实现自动注入
    UserDao userDao;

    // 基于ByName 方式， 默认以当前对象名字作为 bean name 注入
    @Resource//(name="userAction")
    UserAction userAction;  // id=0

    @Resource//(name="userAction")
    UserAction userAction1;  // id=100


    // Spring 官方注解实现 byName
    @Autowired  // 基于byType 实现自动注入
    @Qualifier("userDao")  // 限定词注解 指定 name
    UserDao userDao1;

    @PostConstruct
    public void init(){
        System.out.println("=========init==========");
    }

    @PreDestroy
    public void dest(){
        System.out.println("=========dest==========");
    }

}
